﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace DAL
{
    public class ScoreData
    {
        //对于评分相关的数据操作类
        public void Insert(int Movie_id, int UserId, string score)
        {
            //添加一个用户评分的方法
            ScoresOfMovies Smmodel = new ScoresOfMovies();
            Smmodel.m_id = Movie_id;
            Smmodel.u_id = UserId;
            Smmodel.score = Convert.ToInt32(score);
            Smmodel.time = DateTime.Now;

            //创建上下文对象，用来操作数据库
            ProjectDBEntities pde = new ProjectDBEntities();
            //将新建的数据实例插入到数据表中
            pde.AddToScoresOfMovies(Smmodel);
            //保存。。。。。
            pde.SaveChanges();
        }
        public int Mscore(int M_id)
        {
            //初始化总评分为0。。。。。。
            int S = 0;
            //创建上下文对象，用来操作数据库
            ProjectDBEntities pde = new ProjectDBEntities();
            //用linq语句查询出对应输入的电影id的所有评分记录
            var u = from c in pde.ScoresOfMovies
                    where c.m_id == M_id
                    select c;
            //计算所凭总分数。。。。。。。。。。。。。。
            foreach (ScoresOfMovies n in u)
            {
                S += Convert.ToInt32(n.score);

            }
            //求分数平均值，并返回到逻辑层
            if (u.Count() != 0)
            {
                return Convert.ToInt32(S / u.Count());
            }
            else { return 0; }
        }
    }
}
